home *** CD-ROM | disk | FTP | other *** search
/ Skunkware 5 / Skunkware 5.iso / include / Xm / ArrowBP.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-06-30  |  2.1 KB  |  94 lines

  1. /* 
  2.  * (c) Copyright 1989, 1990, 1991, 1992 OPEN SOFTWARE FOUNDATION, INC. 
  3.  * ALL RIGHTS RESERVED 
  4. */ 
  5. /* 
  6.  * Motif Release 1.2
  7. */ 
  8. /*   $RCSfile: ArrowBP.h,v $ $Revision: 10.1 $ $Date: 1994/02/03 15:33:53 $ */
  9. /*
  10. *  (c) Copyright 1987, 1988, 1989, 1990, 1991, 1992 HEWLETT-PACKARD COMPANY */
  11. #ifndef _XmArrowButtonP_h
  12. #define _XmArrowButtonP_h
  13.  
  14. #include <Xm/ArrowB.h>
  15. #include <Xm/PrimitiveP.h>
  16.  
  17. #ifdef __cplusplus
  18. extern "C" {
  19. #endif
  20.  
  21. /*  Arrow class structure  */
  22.  
  23. typedef struct _XmArrowButtonClassPart
  24. {
  25.    XtPointer extension;
  26. } XmArrowButtonClassPart;
  27.  
  28.  
  29. /*  Full class record declaration for Arrow class  */
  30.  
  31. typedef struct _XmArrowButtonClassRec
  32. {
  33.    CoreClassPart            core_class;
  34.    XmPrimitiveClassPart     primitive_class;
  35.    XmArrowButtonClassPart         arrowbutton_class;
  36. } XmArrowButtonClassRec;
  37.  
  38. externalref XmArrowButtonClassRec xmArrowButtonClassRec;
  39.  
  40.  
  41. /*  The ArrowButton instance record  */
  42.  
  43. typedef struct _XmArrowButtonPart
  44. {
  45.    XtCallbackList activate_callback;
  46.    XtCallbackList arm_callback;
  47.    XtCallbackList disarm_callback;
  48.    unsigned char  direction;      /*  the direction the arrow is pointing  */
  49.  
  50.    Boolean selected;
  51.    short        top_count;
  52.    short        cent_count;
  53.    short        bot_count;
  54.    XRectangle * top;
  55.    XRectangle * cent;
  56.    XRectangle * bot;
  57.  
  58.    GC      arrow_GC;      /*  graphics context for arrow drawing   */
  59.    XtIntervalId     timer;    
  60.    unsigned char    multiClick;         /* KEEP/DISCARD resource */
  61.    int              click_count;
  62.    Time            armTimeStamp;
  63.    GC            insensitive_GC; /* graphics context for insensitive arrow drawing */
  64. } XmArrowButtonPart;
  65.  
  66.  
  67. /*  Full instance record declaration  */
  68.  
  69. typedef struct _XmArrowButtonRec
  70. {
  71.    CorePart           core;
  72.    XmPrimitivePart    primitive;
  73.    XmArrowButtonPart    arrowbutton;
  74. } XmArrowButtonRec;
  75.  
  76.  
  77. /********    Private Function Declarations    ********/
  78. #ifdef _NO_PROTO
  79.  
  80.  
  81. #else
  82.  
  83.  
  84. #endif /* _NO_PROTO */
  85. /********    End Private Function Declarations    ********/
  86.  
  87.  
  88. #ifdef __cplusplus
  89. }  /* Close scope of 'extern "C"' declaration which encloses file. */
  90. #endif
  91.  
  92. #endif /* _XmArrowButtonP_h */
  93. /* DON'T ADD ANYTHING AFTER THIS #endif */
  94.